import { IPSControlHandler } from '../ipscontrol-handler';

/**
 *
 * @export
 * @interface IPSAjaxControlHandler
 */
export interface IPSAjaxControlHandler extends IPSControlHandler {
  /**
   * 缓存范围
   * @description 值模式 [部件后台处理对象缓存范围] {0：无、 1：系统全局、 2：组织机构全局、 3：用户全局、 4：应用全局 }
   * @type {( number | 0 | 1 | 2 | 3 | 4)}
   * @default 0
   */
  cacheScope: number | 0 | 1 | 2 | 3 | 4;

  /**
   * 缓存超时时长（毫秒）
   * @type {number}
   * @default -1
   */
  cacheTimeout: number;

  /**
   * 统一状态监控属性
   * @type {string}
   */
  uniStateField: string;

  /**
   * 缓存统一状态主键属性
   * @type {string}
   */
  uniStateKeyValue: string;

  /**
   * 支持缓存
   * @type {boolean}
   * @default false
   */
  enableCache: boolean;

  /**
   * 支持属性级权限
   * @type {boolean}
   */
  enableDEFieldPrivilege: boolean;
}
